FINS Salesforce Topic Listener API - Implementation Template

(0 reviews)

Data mappings

This document provides information generated from the DataWeave scripts included in the project, such as function definitions, variable definitions, and data mapping tables.

ModuleDescription
functions
map-accounts-to-cimThis transformation produces a single canonical FINS Account from a SF Financial Account
map-transactions-to-cimThis transformation produces a list of canonical FINS Transactions from a SF Financial Account Transaction list
map-cards-to-cimThis transformation produces a list of canonical FINS Cards for a SF Financial Account
map-contact-to-cimSalesforce Contacts pushtopic event message to CIM Mapping
map-contact-address-to-cimThis transformation produces a list of canonical FINS ContactPointAddress for a SF Financial Account
map-customer-and-contact-points-to-cimSalesforce pushtopic event message to CIM Mapping
map-household-to-cimSalesforce Households pushtopic event message to CIM Mapping
map-leads-to-cimThis transformation produces a list of canonical FINS Transactions from a SF Financial Account Transaction list
map-opportunities-to-cimSalesforce Opportunities pushtopic event message to CIM Mapping

functions

Source: ./src/main/resources/dwl/functions.dwl

Functions

fun sfRecordTypeToFins (sfRecordType)

Function to map Record Type to Account type of Banking Library

param sfRecordType Name of the record type in Salesforce
return string Account type in Banking library

fun sfLoanTypeToFins (sfLoanType)

Function to map Loan type of Salesforce to Loan type of Banking Library

param sfLoanType Name of the Loan type in Salesforce
return string Loan type in Banking library

fun sfDepositTypeToFins (sfDepositType)

Function to map DepositType of Salesforce to Deposit type of Banking Library

param sfDepositType Name of the Deposit type in Salesforce
return string Deposit type in Banking library

fun sfBlockchainTypeToFins (sfBlockchainType)

Function to map Blockchain type of Salesforce to Blockchain type of Banking Library

param sfBlockchainType Name of the Blockchain type in Salesforce
return string Blockchain type in Banking library

fun sfLedgerTypeToFins (sfLedgerType)

Function to map Ledger type of Salesforce to Ledger type of Banking Library

param sfLedgerType Name of the Ledger type in Salesforce
return string Ledger type in Banking library

fun sfAccountStatusToFins (sfAccountStatus)

Function to map Account Status of Salesforce to Account Status of Banking Library

param sfAccountStatus Name of the Account Status in Salesforce
return string Account Status in Banking library

fun sfTransactionTypeToFins (sfTransactionType)

Function to map Transaction type of Salesforce to Transaction type of Banking Library

param sfTransactionType Name of the Transaction type in Salesforce
return string Transaction type in Banking library

fun sfTransactionSubtypeToFins (sfTransactionSubtype)

Function to map TransactionSubtype of Salesforce to TransactionSubtype of Banking Library

param sfTransactionSubtype Name of the Transaction Subtype in Salesforce
return string Transaction Subtype in Banking library

fun sfTransactionStatusToFins (sfTransactionStatus)

Function to map Transaction Status of Salesforce to Transaction Status of Banking Library

param sfTransactionStatus Name of the Transaction Status in Salesforce
return string Transaction Status in Banking library

fun sfTransactionDisputedReasonToFins (sfTransactionDisputedReason)

Function to map Dispute Reason Status of Salesforce to Transaction Dispute Reason of Banking Library

param sfTransactionDisputedReason Name of the Transaction Dispute Reason in Salesforce
return string Transaction Dispute Reason in Banking library

fun sfDepositTypeToFins (sfDepositType)

Function to map Deposit type of Salesforce to Deposit type of Banking Library

param sfDepositType Name of the Deposit type in Salesforce
return string Deposit type in Banking library

fun getFormattedDateTime (datetimeToFormat)

Function to format date as "yyyy-MM-dd'T'HH:mm:ssz"

param datetimeToFormat Date in to format
return string formatted date

(back to top)

map-accounts-to-cim

This transformation produces a single canonical FINS Account from a SF Financial Account

Source: ./src/main/resources/dwl/map-accounts-to-cim.dwl

Mapping Tables

Maps a single SF Financial Accounts to a FINS Account

FINSSalesforce Financial AccountDescription
ididSF internal ID of the Account
externalIds[].externalIdGlobal_Account_Id__cExternal ID of the Account
accountCurrencyCurrencyIsoCodeISO Currency code used by the Account
taxIdentificationNumberFinServTaxIDcTax Identification Number of the Account
accountBalanceFinServBalancecBalance of the Account
accountTypeFinServFinancialAccountTypec(enum) Type of Account
accountLabelFinServNicknamecPersonalized name of the Account
availableBalanceFinServCashBalancecAvailable balance of the Account
openedDateFinServOpenDatecDate the Account was opened
closedDateFinServCloseDatecDate the Account was closed
accountNumberFinServFinancialAccountNumbercNumber of the Account
accountStatusFinServStatuscCurrent status of the Account
nameNameOfficial name of the Account
primaryAccountOwnerFinServPrimaryOwnercCustomer who is the primary owner of the account
interestRateFinServInterestRatecInterest rate for a LoanAccount
loanAmountFinServLoanAmountcOriginal loan amount for a LoanAccount
minimumPaymentFinServMinimumPaymentcMinimum payment per pay period for a LoanAccount
principalBalanceFinServPrincipalBalancecRemaining balance for a LoanAccount
minimumPaymentFinServMinimumPaymentcMinimum payment per pay period for a LoanAccount
minimumBalanceFinServMinimumBalancecThe minimum amount that must be held in a Money Market account
maximumMonthlyWithdrawalsMaximum_Monthly_Withdrawals__cThe maximum number of withdrawals allowed per month
createdDateCreatedDateDate the Account record was created in the system
createdByCreatedByIdSystem user who created the Account
updatedDateLastModifiedDateDate the Account was last modified by a system user
updatedByLastModifiedByIdSystem user who last modified the Account

(back to top)

map-transactions-to-cim

This transformation produces a list of canonical FINS Transactions from a SF Financial Account Transaction list

Source: ./src/main/resources/dwl/map-transactions-to-cim.dwl

Mapping Tables

Maps aSF Financial Transaction to a FINS Transaction

FINSSalesforce Financial Account TransactionDescription
idGlobal_Account_Id__cID of the Transaction
externalIds[].externalIdIdExternal ID of the Account
nameNameName of the Transaction
descriptionFinServDescriptioncDescription of the Transaction
amountFinServAmountcTotal amount of the Transaction
transactionDateFinServTransactionDatecDate the Transaction occurred
transactionTypeFinServTransactionTypecType of the Transaction
transactionSubTypeFinServTransactionSubtypecSubtype of the Transaction
transactionStatusFinServTransactionStatuscStatus of the Transaction
postedDateFinServPostDatecDate the Transaction was processed and settled
debitAccountIdFinServFinancialAccountcFinancial Account the amount is debited from
creditAccountIdFinServFinancialAccountcFinancial Account the amount is credited to
isDisputedFinServIsDisputedcWhether the Transaction is disputed
disputedReasonFinServDisputeReasoncWhy the Transaction is disputed
auditInfo.createdDateCreatedDateDatetime when the Transaction record was internally created
auditInfo.createdByCreatedByIdUser which created the Transaction
auditInfo.updatedByLastModifiedByIdUser which last modified the Transaction
auditInfo.updatedDateLastModifiedDateDatetime when the Transaction was last modified

(back to top)

map-cards-to-cim

This transformation produces a list of canonical FINS Cards for a SF Financial Account

Source: ./src/main/resources/dwl/map-cards-to-cim.dwl

Mapping Tables

Maps a SF Financial Card to a FINS Card

FINSSalesforce Financial CardDescription
idGlobal_Card_Id__cID of the Card
externalIds[].externalIdIdExternal ID of the Card
nameNameName of the Card
accountIdsFinServFinancialAccountcFinancial Account related to the Card
cardTypeDebit CardDefault value of card type
cardOwnerIdFinServAccountHoldercCard Owner Id
cardholderNameNameName of the Card
cardNumberFinServBinNumbercNumber on the Card
cardStatusFinServActivecStatus of Card
expiryMonthFinServValidUntilcMonth of expiry
expiryYearFinServValidUntilcyear of expiry
auditInfo.createdDateCreatedDateDatetime when the Card record was internally created
auditInfo.createdByCreatedByIdUser which created the Card
auditInfo.updatedByLastModifiedByIdUser which last modified the Card
auditInfo.updatedDateLastModifiedDateDatetime when the Card was last modified

(back to top)

map-contact-to-cim

Salesforce Contacts pushtopic event message to CIM Mapping

Source: ./src/main/resources/dwl/map-contact-to-cim.dwl

Functions

fun getFormattedDateTime (toFormat)

Formats the date-time to the type accepted by CIM

fun isOrgAccount (isPersonAccount)

Returns whether or not the account is Organization type

Mapping Tables

Maps Salesforce Contact to CIM Individual format

CIMSalesforce ContactDescription
idGlobal_Individual_Id__cThe global identifier of the contact in Salesforce
salutationSalutationThe salutation of the contact
personNameNameThe name of the contact
firstNameFirstNameThe first name of the contact
lastNameLastNameThe Last name of the contact
birthDateBirthdateThe birth date of the contact
partyTypeIndividualThe contact party set as "Individual"
contactPointTypeContactPointAddresscontactPointType set as "ContactPointAddress"
idnullThe contactPointAddress id set as null
activeFromDatenow()The date from which the contactpoint is active - Set as current date
addressLine1MailingStreetThe mailing address of the contact
cityNameMailingCityThe mailing city of the contact
postalCodeTextMailingPostalCodeThe contact mailing postal code
stateProvinceNameMailingStateThe contact state province name
countryNameMailingCountryThe country name of the contact
geoLatitudeMailingLatitudeThe geo-latitude code of the contact
geoLongitudeMailingLongitudeThe geo-longitude code of the contact
geoAccuracyMailingGeocodeAccuracyThe geo-code accurate location of the contact
contactPointTypeContactPointEmailcontactPointType set as "ContactPointEmail"
idnullThe contactpoint id set as null
activeFromDatenow()The date from which the contactpoint is active - Set as current date
emailAddressEmailThe email address of the contact
contactPointTypeContactPointPhonecontactPointType - set as "ContactPointPhone"
contactPointTypeContactIdThe contactpoint id - set as null
activeFromDatenow()The date from which the contactpoint is active - Set as current date
telephoneNumberPhoneThe phone number of the contact
externalIds.idnullId field set as null
externalIds.externalIdIdThe identifier of the contact in Salesforce
externalIds.externalIdType"SALESFORCE_CORE"The externalId Type set as "SALESFORCE_CORE"
externalIds.statusVALIDThe externalId status is set as VALID
auditInfo.createdDateCreatedDateTimestamp of when the contact was created
auditInfo.createdByCreatedByIdIdentifies the system or user which created the contact
auditInfo.updatedDateLastModifiedDateTimestamp of when the contact was last updated
auditInfoupdatedByLastModifiedByIdIdentifies the system or user which last updated the contact
auditInfo.isDeletedIsDeletedIndicates whether or not the contact has been soft-deleted

(back to top)

map-contact-address-to-cim

This transformation produces a list of canonical FINS ContactPointAddress for a SF Financial Account

Source: ./src/main/resources/dwl/map-contact-address-to-cim.dwl

Mapping Tables

Maps a single SF Contact Address to CIM ContactPointAddress

CIM ContactPointAddressSalesforce Financial ContactDescription
idnullThe contactPointAddress id set as null
activeFromDatenow()The date from which the contactpoint is activeSet as current date
addressLine1MailingStreetThe mailing address of the contact
cityNameMailingCityThe mailing city of the contact
postalCodeTextMailingPostalCodeThe contact mailing postal code
stateProvinceNameMailingStateThe contact state province name
countryNameMailingCountryThe country name of the contact
geoLatitudeMailingLatitudeThe geo-latitude code of the contact
geoLongitudeMailingLongitudeThe geo-longitude code of the contact
geoAccuracyMailingGeocodeAccuracyThe geo-code accurate location of the contact
partyIDId of the Contact which is a Person Account
externalIds.idnullId field set as null
externalIds.externalIdIdThe identifier of the contact in Salesforce
externalIds.externalIdType"SALESFORCE_CORE"The externalId Type set as "SALESFORCE_CORE"
externalIds.statusVALIDThe externalId status is set as VALID

(back to top)

map-customer-and-contact-points-to-cim

Salesforce pushtopic event message to CIM Mapping

Source: ./src/main/resources/dwl/map-customer-and-contact-points-to-cim.dwl

Functions

fun getFormattedDateTime (toFormat)

Formats the date-time to the type accepted by CIM

Mapping Tables

Maps event payload from Salesforce pushtopic to CIM Customer format. The CIM Customer (PartyRole) can have either Individual or Organization as Party. The Salesforce PersonAccount is mapped as a Customer with Party as Individual in CIM. The Salesforce Account is mapped as a Customer with Party as Organization in CIM.

CIM - CustomerEvent payload from Salesforce PushtopicDescription
idGlobal_Customer_Id__cThe Global Id of the customer in MDM system
partyRoleType"Customer"The party role type - Set as "Customer"
party[0].idnullThe party identifier - Set as null
party[0].partyType"Individual"The party type - Set as Individual or Organization depending on the Account type
party[0].personNameFirstName LastNameThe Person Name in Salesforce
party[0].firstNameFirstNameThe firstname of the customer in Salesforce
party[0].lastNameLastNameThe lastname of the customer in Salesforce
party[0].contactPoints[0].contactPointType"ContactPointAddress"The contact point type - Set as "ContactPointAddress"
party[0].contactPoints[0].idnullThe contact point type identifier in Salesforce - Set as null
party[0].contactPoints[0].activeFromDatenow()The date from which the contact point is active - Set as current date
party[0].contactPoints[0].addressLine1PersonMailingStreetThe Mailing street of the customer in Salesforce
party[0].contactPoints[0].cityNamePersonMailingCityThe Mailing City of the customer in Salesforce
party[0].contactPoints[0].postalCodeTextPersonMailingPostalCodeThe postal code of the customer in Salesforce
party[0].contactPoints[0].stateProvinceNamePersonMailingStateThe state province of the customer in Salesforce
party[0].contactPoints[0].countryNamePersonMailingCountryThe country of the customer in Salesforce
party[0].contactPoints[0].geoLatitudePersonMailingLatitudeThe latitude co-ordinates of the customer address
party[0].contactPoints[0].geoLongitudePersonMailingLongitudeThe longitude co-ordinates of the customer address
party[0].contactPoints[0].geoAccuracyPersonMailingGeocodeAccuracy The geo-accuracy of the customer address
party[0].contactPoints[1].contactPointType"ContactPointEmail"The contact point type - Set as "ContactPointEmail"
party[0].contactPoints[1].idnullThe contact point type identifier in Salesforce - Set as null
party[0].contactPoints[1].activeFromDatenow()The date from which the contact point is active - Set as current date
party[0].contactPoints[1].emailAddressPersonEmailThe Email address of the customer in Salesforce
party[0].contactPoints[2].contactPointType"ContactPointPhone"The contact point type - Set as "ContactPointPhone"
party[0].contactPoints[2].idnullThe contact point type identifier in Salesforce - Set as null
party[0].contactPoints[2].activeFromDatenow()The date from which the contact point is active - Set as current date
party[0].contactPoints[2].telephoneNumberPhoneThe telephone number of the customer in Salesforce
externalIds[0].idnullThe identifier for the externalId entry - Set as null
externalIds[0].externalIdIdThe identifier of the customer in Salesforce
externalIds[0].externalIdType"SALESFORCE_CORE"The external identifier type - Set as "SALESFORCE_CORE"
externalIds[0].status"VALID"The status of the ExternalId - Set as "VALID"
customerNumberAccountNumberThe customer number stored in Salesforce - default as ""
customerStatus"ACTIVE"The customer Status in Salesforce - Set as Active
auditInfo.createdDategetFormattedDateTime(CreatedDate)Timestamp of when the customer was created
auditInfo.createdByCreatedByIdIdentifies the system or user which created the customer
auditInfo.updatedDategetFormattedDateTime(LastModifiedDate)Timestamp of when the customer was last updated
auditInfoupdatedByLastModifiedByIdIdentifies the system or user which last updated the customer
auditInfo.isDeletedIsDeletedIndicates whether or not the customer has been soft-deleted

(back to top)

map-household-to-cim

Salesforce Households pushtopic event message to CIM Mapping

Source: ./src/main/resources/dwl/map-household-to-cim.dwl

Functions

fun getFormattedDateTime (toFormat)

Formats the date-time to the type accepted by CIM

Mapping Tables

Maps Salesforce Contact to CIM Household format

CIMSalesforce ContactDescription
idGlobal_Party_Id__cThe global identifier of the contact in Salesforce
NameNameThe name of the Household
partyTypeHouseholdThe party set as "Household"
externalIds.idnullId field set as null
externalIds.externalIdIdThe identifier of the contact in Salesforce
externalIds.externalIdType"SALESFORCE_CORE"The externalId Type set as "SALESFORCE_CORE"
externalIds.statusVALIDThe externalId status is set as VALID
auditInfo.createdDateCreatedDateTimestamp of when the contact was created
auditInfo.createdByCreatedByIdIdentifies the system or user which created the contact
auditInfo.updatedDateLastModifiedDateTimestamp of when the contact was last updated
auditInfoupdatedByLastModifiedByIdIdentifies the system or user which last updated the contact
auditInfo.isDeletedIsDeletedIndicates whether or not the contact has been soft-deleted

(back to top)

map-leads-to-cim

This transformation produces a list of canonical FINS Transactions from a SF Financial Account Transaction list

Source: ./src/main/resources/dwl/map-leads-to-cim.dwl

Mapping Tables

Maps Salesforce Lead to CIM Lead format

CIMSalesforce LeadDescription
idIdThe Id of Lead in Salesforce
salutationSalutationThe salutation of the lead
personNameNameThe name of the Lead
firstNameFirstNameThe first name of the contact
lastNameLastNameThe Last name of the contact
partyRoleTypeLeadThe partyRole set as Customer
partyTypeIndividualThe contact party set as "Individual"
contactPointTypeContactPointAddresscontactPointType set as "ContactPointAddress"
idnullThe contactPointAddress id set as null
activeFromDatenow()The date from which the contactpoint is active - Set as current date
addressLine1StreetThe street address of the lead
cityNameCityThe city of the lead
postalCodeTextPostalCodeThe postal code of the lead
stateProvinceNameStateThe lead state province name
countryNameCountryThe country name of the lead
geoLatitudeLatitudeThe geo-latitude code of the lead
geoLongitudeLongitudeThe geo-longitude code of the lead
contactPointTypeContactPointEmailcontactPointType set as "ContactPointEmail"
idnullThe contactpoint id set as null
activeFromDatenow()The date from which the contactpoint is active - Set as current date
emailAddressEmailThe email address of the lead
contactPointTypeContactPointPhonecontactPointType - set as "ContactPointPhone"
contactPointTypeContactIdThe contactpoint id - set as null
activeFromDatenow()The date from which the contactpoint is active - Set as current date
telephoneNumberPhoneThe phone number of the lead
externalIds.idnullId field set as null
externalIds.externalIdIdThe identifier of the contact in Salesforce
externalIds.externalIdType"SALESFORCE_CORE"The externalId Type set as "SALESFORCE_CORE" by default
externalIds.statusVALIDThe externalId status is set as VALID
auditInfo.createdDateCreatedDateTimestamp of when the contact was created
auditInfo.createdByCreatedByIdIdentifies the system or user which created the contact
auditInfo.updatedDateLastModifiedDateTimestamp of when the contact was last updated
auditInfoupdatedByLastModifiedByIdIdentifies the system or user which last updated the contact
auditInfo.isDeletedIsDeletedIndicates whether or not the contact has been soft-deleted

(back to top)

map-opportunities-to-cim

Salesforce Opportunities pushtopic event message to CIM Mapping

Source: ./src/main/resources/dwl/map-opportunities-to-cim.dwl

Functions

fun getFormattedDateTime (toFormat)

Formats the date-time to the type accepted by CIM

Mapping Tables

Maps Salesforce Contact to CIM Opportunities format

CIMSalesforce ContactDescription
idGlobal_Party_Id__cThe global identifier of the Opportinity in Salesforce
nameNameThe name of the contact
firstNameAccount.FirstNameThe First Name of the account
lastNameAccount.NameThe Last Name of the account
personNameAccount.NameThe name of the account
partyTypeHouseholdThe party set as "Opportunity"
amountAmountThe amount mentioned in Salesforce
opportunityTypeTypeThe type of opportunity in Salesforce
closeDateCloseDateThe date on which the opportunity is closed
stageNameStageNameCurrent stage of the Opportunity
isClosedIsClosedIs the opportunity closed
isWonIsWonIs the opportunity won
primaryAccountAccountIdAccount associated with the opportunity
achTransferAuthDocumentIdAch Transfer Auth Document IdAch Transfer Document Id associated with opportunity
assetTransferAuthDocumentIdAch Transfer Auth Document IdAsset Transfer Document Id associated with opportunity
hasAllDocumentSignaturesDocument Signatures ReceivedFlag to indicate if all Signatures have been received for the Documents
hasKnowledgeCheckPassedKYC CompletedFlag to indicate if KYC Checked have been completed
contactPointsAccount.ContactContacts related to the Account associated with the opportunity
externalIds.idnullId field set as null
externalIds.externalIdIdThe identifier of the contact in Salesforce
externalIds.externalIdType"SALESFORCE_CORE"The externalId Type set as "SALESFORCE_CORE"
externalIds.statusVALIDThe externalId status is set as VALID
auditInfo.createdDateCreatedDateTimestamp of when the contact was created
auditInfo.createdByCreatedByIdIdentifies the system or user which created the contact
auditInfo.updatedDateLastModifiedDateTimestamp of when the contact was last updated
auditInfoupdatedByLastModifiedByIdIdentifies the system or user which last updated the contact
auditInfo.isDeletedIsDeletedIndicates whether or not the contact has been soft-deleted

(back to top)


Reviews

TypeTemplate
OrganizationMuleSoft
Published by
MuleSoft Solutions
Published onDec 13, 2022
Asset overview

Asset versions for 1.7.x

Asset versions
VersionActions
1.7.0